/*
 * Copyright DimYLiK.
 */

package com.example.myapp.client;

import com.example.myapp.shared.SavedSessionModel;
import com.example.myapp.shared.Word;
import com.google.gwt.user.client.rpc.AsyncCallback;

import java.util.List;

/**
 * The async counterpart of <code>AntiBaldaService</code>.
 */

public interface AntiBaldaServiceAsync {

    void initVocabulary(AsyncCallback<Integer> async);

    void findWords(SavedSessionModel savedSessionModel, Integer minLetters, Integer maxLetters, Integer maxWords, AsyncCallback<List<Word>> async);

    void checkSession(AsyncCallback<SavedSessionModel> async);

    void getWordDescription(String stringWord, AsyncCallback<String> async);

    void getSavedLanguage(String defaultLanguage, AsyncCallback<String> async);

    void saveLanguage(String language, AsyncCallback<Boolean> async);

    void initIpAddress(AsyncCallback<String> async);
}
